import com.manjason.property.dao.PropertyDao;
import com.manjason.property.dao.impl.PropertyDaoImpl;
import com.manjason.property.entity.Property;
import org.hibernate.HibernateException;
import org.hibernate.Metamodel;
import org.hibernate.query.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

import javax.persistence.metamodel.EntityType;

import java.util.Map;

public class Main {
//    private static final SessionFactory ourSessionFactory;

//    static {
//        try {
//            Configuration configuration = new Configuration();
//            configuration.configure();
//
//            ourSessionFactory = configuration.buildSessionFactory();
//        } catch (Throwable ex) {
//            throw new ExceptionInInitializerError(ex);
//        }
//    }

//    public static Session getSession() throws HibernateException {
//        return ourSessionFactory.openSession();
//    }

    public static void main(final String[] args) throws Exception {
//        final Session session = getSession();
//        try {
//            System.out.println("查询所有数据库表...");
//            final Metamodel metamodel = session.getSessionFactory().getMetamodel();
//            for (EntityType<?> entityType : metamodel.getEntities()) {
//                final String entityName = entityType.getName();
//                final Query query = session.createQuery("from " + entityName);
//                System.out.println("拥有的数据库表: " + query.getQueryString());
//                for (Object o : query.list()) {
//                    System.out.println(" " + o);
//                }
//            }
//
//        } finally {
//            session.close();
//        }
//        System.out.println("写入一条数据到数据库");
//        Property property = new Property();
//        property.setPlayerName("Man_Jason");
//        property.setIq(100);
//        property.setLuck(200);
//        property.setPhysical(300);
//        property.setPhysique(400);
//        property.setQuick(500);
//        property.setSpirit(600);
//        PropertyDao propertyDao = new PropertyDaoImpl();
//        propertyDao.save(property);

    }
}